package DeskTop.swing;

import java.awt.*;
import javax.swing.*;

public class JPanelDemo extends JFrame {

    public JPanelDemo() {
        Container container = this.getContentPane();
        container.setLayout(new GridLayout(2, 1, 10, 10)); // 整个容器为2行1列

        JPanel p1 = new JPanel(new GridLayout(1, 3)); // 初始化一个面板，设置1行3列的网格布局
        JPanel p2 = new JPanel(new GridLayout(1, 2)); // 初始化一个面板，设置1行2列的网格布局
        JPanel p3 = new JPanel(new GridLayout(2, 1)); // 初始化一个面板，设置2行1列的网格布局
        JPanel p4 = new JPanel(new GridLayout(3, 2)); // 初始化一个面板，设置3行2列的网格布局

        JRadioButton jr1 = new JRadioButton("单选1");
        JRadioButton jr2 = new JRadioButton("单选2");
        JRadioButton jr3 = new JRadioButton("单选3");
        ButtonGroup group = new ButtonGroup();
        group.add(jr1);
        group.add(jr2);
        group.add(jr3);

        // 下拉框
        JComboBox status = new JComboBox();
        status.addItem(null);
        status.addItem("正在上映");
        status.addItem("即将上映");
        status.addItem("下架");

        // 列表框
        String[] contents = { "1", "2", "3" };
        JList jl = new JList(contents);

        //文本框
        JTextField jt = new JTextField("aaa"); // 创建一个文本框，值为aaa
        jt.setText(""); // 将文本框置空

        p1.add(status); // 在JPanel面板中添加下拉框
        p1.add(jl); // 在JPanel面板中添加列表框
        p1.add(jt); // 在JPanel面板中添加文本框
        p2.add(new JButton("2")); // 在JPanel面板中添加按钮
        p2.add(new JButton("2")); // 在JPanel面板中添加按钮
        p3.add(new JButton("3")); // 在JPanel面板中添加按钮
        p3.add(new JButton("3")); // 在JPanel面板中添加按钮
        p4.add(new JButton("4")); // 在JPanel面板中添加按钮
        p4.add(new JButton("4")); // 在JPanel面板中添加按钮
        p4.add(new JButton("4")); // 在JPanel面板中添加按钮
        p4.add(new JButton("4")); // 在JPanel面板中添加按钮
        p4.add(new JButton("4")); // 在JPanel面板中添加按钮
        p4.add(new JButton("4")); // 在JPanel面板中添加按钮

        container.add(p1); // 在容器中添加面板
        container.add(p2); // 在容器中添加面板
        container.add(p3); // 在容器中添加面板
        container.add(p4); // 在容器中添加面板

        this.setVisible(true);
        this.setSize(500, 350);
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }

    public static void main(String[] args) {
        new JPanelDemo();
    }

}
